package com.ly.heart.domain;

import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import com.ly.common.annotation.Excel;
import com.ly.common.core.domain.BaseEntity;

/**
 * 调拨申请单对象 erp_king_apply_allocate
 * 
 * @author wutao
 * @date 2024-08-12
 */
@TableName("erp_king_apply_allocate")
@ApiModel(value = "erp_king_apply_allocate调拨申请单对象", description = "调拨申请单对象")
@Data
public class KingApplyAllocateEntity extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 调拨申请单id */
    @TableId(value = "id", type = IdType.INPUT)
    private String id;

    /** 调拨单编号 */
    @Excel(name = "调拨单编号")
    @ApiModelProperty("调拨单编号")
    @TableField("doc_num")
    private String docNum;

    /** 申请组织 */
    @Excel(name = "申请组织")
    @ApiModelProperty("申请组织")
    @TableField("apply_org")
    private String applyOrg;

    /** 申请时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "申请时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("申请时间")
    @TableField("apply_time")
    private Date applyTime;

    /** 单据类型 */
    @Excel(name = "单据类型")
    @ApiModelProperty("单据类型")
    @TableField("doc_type")
    private String docType;

    /** 调拨类型 */
    @Excel(name = "调拨类型")
    @ApiModelProperty("调拨类型")
    @TableField("allocate_type")
    private String allocateType;

    /** 调出货主类型 */
    @Excel(name = "调出货主类型")
    @ApiModelProperty("调出货主类型")
    @TableField("allocate_out_owner_type")
    private String allocateOutOwnerType;

    /** 业务类型 */
    @Excel(name = "业务类型")
    @ApiModelProperty("业务类型")
    @TableField("business_type")
    private String businessType;

    /** -1暂存0审核中2审核通过 */
    @Excel(name = "-1暂存0审核中2审核通过")
    @ApiModelProperty("状态只做展示-1暂存0审核中2审核通过")
    @TableField("state")
    private String state;

    @ApiModelProperty("流程实例id")
    @TableField("instance_id")
    @Excel(name = "流程实例id")
    private String instanceId;

    /** 调入货主类型 */
    @Excel(name = "调入货主类型")
    @ApiModelProperty("调入货主类型")
    @TableField("allocate_in_owner_type")
    private String allocateInOwnerType;

    /** 调拨方向 */
    @Excel(name = "调拨方向")
    @ApiModelProperty("调拨方向")
    @TableField("allocate_direction")
    private String allocateDirection;

    /** 是否再用(1正常2删除) */
    @Excel(name = "是否再用(1正常2删除)")
    @ApiModelProperty("是否再用")
    @TableField("is_used")
    private String isUsed;

    @ApiModelProperty("流程模型id")
    @TableField (exist = false)
    private String modelId;

    /**
     * 申请单详情
     */
    @TableField(exist = false)
    private List<KingAllocateDetailEntity> kingAllocateDetailEntityList;
    
}
